package com.lp.biz.content.model.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.io.Serial;

import com.lp.biz.content.model.vo.DisplayBase;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * biz_core_content实体类
 * 主内容
 * @program: backend
 * @author Ke.Song
 * @since 2024-05-02 10:45:20
 */
@EqualsAndHashCode(callSuper = true)
@Data
@TableName("biz_core_content")
public class BizCoreContent extends DisplayBase implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 分类id
     */
    private Integer bizCategoryId;

    private String bizCategoryCode;

    /**
     * label id
     */
    private Integer bizLabelId;

    /**
     * 类型code - 训练营才会有
     */
    private String typeCode;

    private String title;

    /**
     * 描述/简介
     */
    @TableField("`description`")
    private String description;

    /**
     * 内容
     */
    private String content;

    /**
     * 横图
     */
    private String imageT;

    /**
     * 竖排
     */
    private String imageV;

    /**
     * 视频地址
     */
    private String videoUrl;

    /**
     * 音频地址
     */
    private String audioUrl;

    /**
     * 是否收费, 0: 不收费, 1: 收费
     */
    private Integer isCharge;

    /**
     * 是否展示, 0: 不展示, 1: 展示
     */
    private Integer isDisplay;

    /**
     * 上架时间
     */
    private LocalDateTime displayAt;

    /**
     * 上架类型, 1：立即上架，2：定时上架，3：暂不上架
     */
    private Integer displayType;

    /**
     * 原始价格
     */
    private BigDecimal originalPrice;


    /**
     * 实际价格
     */
    private BigDecimal actualPrice;

    /**
     * 时长
     */
    private String duration;

    /**
     * 是否是推荐, 0: 不是, 1: 是
     */
    private Integer isRecommend;

    /**
     * 推荐开始时间
     */
    private LocalDate recommendStartAt;

    /**
     * 推荐结束时间
     */
    private LocalDate recommendEndAt;

    /**
     * 作者
     */
    private String author;

    /**
     * 观看/学习人数
     */
    private Integer num;

    /**
     * 道理
     */
    private String reason;

    /**
     * 创建时间
     */
    private LocalDateTime createAt;

    /**
     * 更新时间
     */
    private LocalDateTime updateAt;

    /**
     * 图文介绍
     */
    @TableField("`profile`")
    private String profile;

    /**
     * 是否删除
     */
    private Integer isDeleted;

    /**
     * 排序
     */
    private Integer sort;
}
